﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace DAMBAOCLPM
{
    public partial class frmXembaithi : Form
    {
        public frmXembaithi()
        {
            InitializeComponent();
        }
        //Load dữ liệu số báo danh lên combobox số báo danh
        private void frmXembaithi_Load(object sender, EventArgs e)
        {
            this.Width = clsVariables.Width_This - 21;
            this.Height = clsVariables.Height_This - clsVariables.Height_TopMenu - 65;
            this.Top = clsVariables.Height_TopMenu - 66;
            this.Left = 0;
            clsConnection.CreateConnection();
            SqlDataAdapter da = new SqlDataAdapter("select distinct SBD from CHITIETBAILAM", clsConnection.con);
            DataTable tb = new DataTable();
            da.Fill(tb);
            cbosbd.DataSource = tb;
            cbosbd.DisplayMember = "SBD";
            cbosbd.ValueMember = "SBD";
            cbosbd.Text = "";
            txtdiem.Enabled = false;
            txtsocaudung.Enabled = false;
            

        }
//------------------------------------------------------------------------------------------------
         // Load dữ liệu mã đề theo số báo danh
        private void cbosbd_SelectedIndexChanged(object sender, EventArgs e)
        {
            clsConnection.CreateConnection();
            SqlDataAdapter da = new SqlDataAdapter("select DISTINCT MADE from CHITIETBAILAM  where SBD = '" + cbosbd.SelectedValue.ToString() + "'",clsConnection.con);
            DataTable tb = new DataTable();
            da.Fill(tb);
            cbomade.DataSource = tb;
            cbomade.DisplayMember = "MADE";
            cbomade.Text = "";
            txtholot.Text = "";
            txttenthisinh.Text = "";
            txtngaysinh.Text = "";
            txtnoisinh.Text = "";
            txtsocaudung.Text = "";
            txtdiem.Text = "";
            cbomade.ResetText();
        }
//------------------------------------------------------------------------------------------------
        // Load dữ liệu họ lót, tên, ngày sinh, nơi sinh, số câu đúng, điểm lên theo số báo danh và mã đề

        private void cbomade_SelectedIndexChanged(object sender, EventArgs e)
        {
            clsConnection.CreateConnection();
         
                string sql = "Select C.HOLOT, C.TEN, C.NGAYSINH, C.NOISINH, count(B.SBD)as socaudung, sum(A.SODIEM)  FROM CHITIETDAPAN AS A, CHITIETBAILAM AS B, THISINH AS C WHERE A.MADE= B.MADE AND A.PHUONGAN = B.PHUONGAN AND A.STTCAUDETHI = B.STTCAU AND C.SBD = B.SBD AND B.SBD = '" + cbosbd.SelectedValue.ToString() + "' AND A.MADE = '" + cbomade.SelectedValue.ToString() + "' group by C.HOLOT, C.TEN, C.NGAYSINH, C.NOISINH, B.SBD, A.SODIEM ";
                SqlCommand cmd = new SqlCommand(sql, clsConnection.con);
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.HasRows)
                {
                    dr.Read();
                    txtholot.Text = dr.GetString(0); //tên cột or số thứ tự của cột trong database
                    txttenthisinh.Text = dr.GetString(1);
                    txtngaysinh.Text = dr.GetString(2);
                    txtnoisinh.Text = dr.GetString(3);
                    txtsocaudung.Text = dr.GetInt32(4).ToString();
                    txtdiem.Text = dr.GetDouble(5).ToString();

                }
                else
                {
                    txtholot.Clear();
                    txttenthisinh.Clear();
                    txtngaysinh.Clear();
                    txtnoisinh.Clear();
                    txtsocaudung.Clear();
                    txtdiem.Clear();
                }

                dr.Close();
                dr.Dispose();
                clsConnection.con.Close();
                clsConnection.con.Dispose();
            
           
        }
//---------------------------------------------------------------------------------------------------------
        // Load dữ liệu bài làm của thí sinh lên dataview theo số báo danh và mã đề
        private void btnxemtraloi_Click(object sender, EventArgs e)
        {
            clsConnection.CreateConnection();          
            string sql = "SELECT PHUONGAN FROM CHITIETDAPAN WHERE MADE = '" + cbomade.SelectedValue.ToString() + "'";
            SqlDataAdapter da1 = new SqlDataAdapter(sql, clsConnection.con);
            DataSet ds = new DataSet();
            da1.Fill(ds, "table");
            DataTable table = ds.Tables[0];
            dtvbangtam.DataSource = table;    
            if (cbosbd.Text == "" || cbomade.Text == "")
            {
                MessageBox.Show("bạn cần chọn số báo danh để xem bài thi thí sinh !");
            }
            else
            {
                try
                {
                    SqlCommand cmd = new SqlCommand("select STTCAU, PHUONGAN from CHITIETBAILAM where SBD = '" + cbosbd.SelectedValue.ToString() + "' and MADE ='" + cbomade.SelectedValue.ToString() + "'", clsConnection.con);
                    SqlDataAdapter da = new SqlDataAdapter(cmd);
                    DataTable dt = new DataTable();
                    da.Fill(dt);
                    dtvXembaithi.DataSource = dt;              
                   
                    for (int i = 0; i < dtvXembaithi.Rows.Count; i++)
                    {
                        if (dtvXembaithi.Rows[i].Cells[1].Value.ToString() != dtvbangtam.Rows[i].Cells[0].Value.ToString())
                        {
                            dtvXembaithi[1, i].Style.ForeColor = Color.Red;
                        }
                    }

                }
                catch
                {

                }


                /* for (int i = 1; i < dtvXembaithi.RowCount / 2; i++)
                  {
                      dtvXembaithi.Rows[i].Cells[0].Value = i + 1;

                  }*/
            }
        }

    }
}
